The present invention relates to digital image processing methods for detecting facial features and more particularly to methods for detecting human eyes.
In digital image processing it is often useful to detect human eyes in an image. This information is used, for example, to locate other features in the image such as human visual orientation. This information can also be used for other purposes such as finding the orientation of a human face in the image.
Methods are known in the art for finding human eyes in a digital image. For example, U.S. Pat. No. 6,072,892 discloses the use of a thresholding method to detect the position of human eyes in a digital image. In this method, a scanning window scans across the entire image using a raster scanning method. A histogram extractor extracts an intensity histogram from the window as it scans across the image. Each intensity histogram is examined by a peak detector to find three peaks in the histogram representing the skin, the white of the eye, and the black of the pupil. A histogram having the three peaks identifies a location in an image that potentially defines an eye position. Eye position is determined from among the potential locations by calculating the area under the histogram associated with each potential location and by selecting the location that is associated with the histogram with the largest area.
One of the problems with this approach is that the entire image must be scanned on a pixel-by-pixel basis. Thus, a search window must be positioned at each pixel in the image and a histogram must be assembled at each pixel location. Further, the area under each histogram must be calculated and stored. It will be appreciated that this method consumes enormous amounts of computing power and reduces the rate at which images can be processed. This method can also produce a high rate of false positives.
Methods are also known to detect human eyes that have abnormally high red content. Such abnormally high red content is commonly associated with a photographic phenomenon known as red eye. Red eye is typically caused by a flash of light that is reflected by a pupil. As is described in commonly assigned and co-pending U.S. patent application Ser. No. 08/919,560, it is known to search in images for pixels having the high red content that is indicative of red eye. Similarly, commonly assigned U.S. Pat. No. 5,432,863 describes a user interactive method for detecting pixels in an image that have color characteristic of red eye. It will be recognized that these methods detect eyes only where red eye is present.
Thus, there is a need for a method to locate human eyes in a digital image with greater accuracy and efficiency.
The need is met according to the present invention by a digital image processing method for detecting human eyes in a digital image. This method comprises the steps of: detecting iris pixels in the image; clustering the iris pixels, and selecting at least one of the following methods to identify eye positions: applying geometric reasoning to detect eye positions using the iris pixel clusters; applying a summation of squared difference method using the iris pixel clusters to detect eye positions; and applying a summation of squared difference method to detect eye positions from the pixels in the image; wherein, the method applied is selected on the basis of the number of iris pixel clusters.
The need is also met in another embodiment of the present invention, by a computer program product. The computer program product comprises a computer readable storage medium having a computer program stored thereon for performing the steps of: detecting iris pixels in the image; clustering the iris pixels, and selecting at least one of the following methods to identify eye positions: applying geometric reasoning to detect eye positions using the iris pixel clusters; applying a summation of squared difference method using the iris pixel clusters to detect eye positions; and applying a summation of squared difference method to detect eye positions from the pixels in the image; wherein, the method applied is selected on the basis of the number of iris pixel clusters.